package com.ruoyi.distributionRelation.service;

import java.util.Map;

/**
 * 分销关系缓存服务接口
 * 用于临时存储用户通过扫码建立的临时分销关系
 */
public interface IDistributionRelationCacheService {

    /**
     * 缓存临时分销关系
     * @param userId 用户ID
     * @param distributorId 分销员ID
     * @param goodsId 商品ID
     * @param expireMinutes 过期时间（分钟）
     */
    void cacheTemporaryRelation(Long userId, Long distributorId, Long goodsId, int expireMinutes);

    /**
     * 获取用户的临时分销关系
     * @param userId 用户ID
     * @return 分销关系信息，包含分销员ID和商品ID
     */
    Map<String, Object> getTemporaryRelation(Long userId);

    /**
     * 删除用户的临时分销关系
     * @param userId 用户ID
     */
    void removeTemporaryRelation(Long userId);

    /**
     * 检查是否存在临时分销关系
     * @param userId 用户ID
     * @return 是否存在
     */
    boolean hasTemporaryRelation(Long userId);
}